import { EntityModel } from '@midwayjs/orm';
import { BaseEntity } from 'midwayjs-cool-core';
import { Column, Index, PrimaryGeneratedColumn } from 'typeorm';

/**
 * 衣服 SKU 信息：使用联合索引标识 SKU
 */
@EntityModel('mall_product_clothing')
@Index(['productId', 'color', 'size'], { unique: true }) // SKU 对产品唯一
export class MallProductClothingEntity extends BaseEntity {
  @PrimaryGeneratedColumn({ comment: 'SKU id' })
  id: number;

  @Column({ comment: 'ManyToOne：SKU => product' })
  productId: number;

  // 每个 SKU 可以有一个海报（缩略图），但不是必须的
  @Column({ comment: '海报', nullable: true })
  poster: string;

  @Column({ comment: '颜色/款式' })
  color: string;

  @Column({ comment: '尺码' })
  size: string;

  @Column({ comment: '价格', precision: 2 })
  price: number;

  @Column({ comment: '库存' })
  stock: number;
}
